﻿/*
   Open Intel 
   Copyright © 2011 – ISC. All Rights Reserved.
*/

using System.ServiceModel;
using Caliburn.Micro;
using OI.SharingService;

namespace OI.Async
{
    public abstract class SharingServiceBase : IResult
    {
        #region DATA
        public SharingServiceClient Client
        {
            get { return _Client ?? (_Client = ServiceClients.CreateSharingServiceClient()); }
        }
        SharingServiceClient _Client;

        public string Results { get; set; }
        #endregion

        public abstract event System.EventHandler<ResultCompletionEventArgs> Completed;
        public abstract void Execute(ActionExecutionContext context);   
    }
}
